package com.rainbow.autocode.entity;

import java.math.BigInteger;

/**
 * 列的属性
 *
 * @author fuweidi
 * @email 1335157415@qq.com
 * @date 2016年12月20日 上午12:01:45
 */
public class ColumnEntity {
	//列名
    private String columnName;
    //数据库列名类型
    private String datatype; //小写比如 varchar
	//数据库列名类型
	private String dataType; //大写比如 VARCHAR
    //列名备注
    private String comments;

    //属性名称(第一个字母大写)，如：user_name => UserName
    private String attrName;
    //属性名称(第一个字母小写)，如：user_name => userName
    private String attrname;
    //属性类型
    private String attrType;
    //auto_increment
    private String extra;
    //是否为空 true 可为空 false 不可为空
    private Boolean nullAble;
	//JAVA完整属性类型
	private String propType;
	//字段最大长度
	private Long maxLength;
	//默认值
	private String defaultValue;
	//列位置
	private Long position;


	//列是否有枚举
	private Boolean  hasEnum;

	//列对应的枚举
	private ColumnEnum columnEnum;

	//枚举对应字典常量名称 eg:operatorStatus public final static String OPERATOR_STATUS="operatorStatus";
	private String columeEnumDict;


	public String getColumnName() {
		return columnName;
	}
	public void setColumnName(String columnName) {
		this.columnName = columnName;
	}
	public void setDataType(String dataType) {
		this.dataType = dataType;
	}
	public String getComments() {
		return comments;
	}
	public void setComments(String comments) {
		this.comments = comments;
	}
	public String getAttrname() {
		return attrname;
	}
	public void setAttrname(String attrname) {
		this.attrname = attrname;
	}
	public String getAttrName() {
		return attrName;
	}
	public void setAttrName(String attrName) {
		this.attrName = attrName;
	}
	public String getAttrType() {
		return attrType;
	}
	public void setAttrType(String attrType) {
		this.attrType = attrType;
	}
	public String getExtra() {
		return extra;
	}
	public void setExtra(String extra) {
		this.extra = extra;
	}
	public Boolean getNullAble() {
		return nullAble;
	}
	public void setNullAble(Boolean nullAble) {
		this.nullAble = nullAble;
	}
	public String getPropType() {
		return propType;
	}
	public void setPropType(String propType) {
		this.propType = propType;
	}

	public Long getMaxLength() {
		return maxLength;
	}

	public void setMaxLength(Long maxLength) {
		this.maxLength = maxLength;
	}

	public String getDatatype() {
		return datatype;
	}
	public void setDatatype(String datatype) {
		this.datatype = datatype;
	}
	public String getDataType() {
		return dataType;
	}

	public String getDefaultValue() {
		return defaultValue;
	}

	public void setDefaultValue(String defaultValue) {
		this.defaultValue = defaultValue;
	}

	public Long getPosition() {
		return position;
	}

	public void setPosition(Long position) {
		this.position = position;
	}

	public Boolean getHasEnum() {
		return hasEnum;
	}

	public void setHasEnum(Boolean hasEnum) {
		this.hasEnum = hasEnum;
	}

	public ColumnEnum getColumnEnum() {
		return columnEnum;
	}

	public void setColumnEnum(ColumnEnum columnEnum) {
		this.columnEnum = columnEnum;
	}

	public String getColumeEnumDict() {
		return columeEnumDict;
	}

	public void setColumeEnumDict(String columeEnumDict) {
		this.columeEnumDict = columeEnumDict;
	}
}
